package com.copm.ifm.servers.sys.service.process;

import com.baomidou.mybatisplus.extension.service.IService;
import com.copm.ifm.base.api.pojo.PageDTO;
import com.copm.ifm.base.api.pojo.PageVO;
import com.copm.ifm.base.basic.pojo.DictContent;
import com.copm.ifm.servers.sys.dto.SysDictPageDTO;
import com.copm.ifm.servers.sys.entity.SysDict;
import com.copm.ifm.servers.sys.vo.SysDictPageVO;
import com.copm.ifm.servers.sys.vo.SysDictVO;

import java.util.List;

/**
 * <p>
 * 系统字典表 服务类
 * </p>
 *
 * @author zzf
 * @since 2020-07-15
 */
public interface SysDictService extends IService<SysDict> {

    /**
     * 分页查询数据
     *
     * @param param 分页参数
     * @return 分页数据
     */
    PageVO<SysDictPageVO> selectForPage(PageDTO<SysDictPageDTO> param);

    SysDictVO selectById(Long id, int language);

    SysDictVO selectByCode(String code, int language);

    /**
     * 查询所有可用字典集合
     *
     * @return 可用字典集合
     */
    List<SysDict> listAll();

    SysDict updateSys(DictContent entity, String code);

    void deletedByKey(Integer key, String code);

    SysDictVO selectByName(String name, int language);

    void updateEntityById(SysDict entity);

    int updateDeleted(Long id);

    String getName(String code, Integer key);
}
